import Axios from "axios"; // 引入axios
import ElementUI from 'element-ui';
import router from '../router';

const axios = Axios.create({
    baseURL: '/api',
    timeout: 30000
    
})
// // 响应拦截
// axios.interceptors.response.use(
//     response => {
//         const res = response.data
//         if (res.code === 20000) {
//             return response.data
//         } else {
//             Promise.reject(res)
//         }
//     },
//     //错误状态码
//     error => {
//         return error
//     }
// );


axios.interceptors.request.use(function (config) {
  let token = window.localStorage.getItem('token') || '';
  if(token){
      config.headers.token = token
  }
  // 在发送请求之前做些什么
  return config
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error)
})

axios.interceptors.response.use(function (response) {
  // 对响应数据做点什么
  console.log(response)
  // ElementUI.Message({
  //   type: 'success',
  //   message: response.data.message
  // })
// 限制弹出框多次弹出
// document.getElementsByClassName("el-message-box").length === 0

  if(response.data.code === 5000 && document.getElementsByClassName("el-message-box").length === 0) {
    ElementUI.MessageBox(response.data.message, "提示", {
      confirmButtonText: '重新登录',
      closeOnClickModal: false
    }).then(() => {
      window.localStorage.clear()
      console.log(router)
      router.push('/Login')
    })
  }
  return response.data
}, function (error) {
  // 对响应错误做点什么
  return Promise.reject(error)
})
export default axios;
